In general, compression and decompression (codec) techniques may be implemented to reduce memory bandwidth usage in graphics processors or central processor units. Such savings may be used to lower power consumption, which may be valuable in devices such as phones or tablets or the like. Further, such savings may be valuable for lower power and/or higher performance in implementations such as laptop computers, desktop computers, desktop graphics implementations, or the like.
Various codec techniques have been proposed and are in use. For example, in graphics processing, depth compression, color compression, floating-point depth compression, floating-point color, and the like may be implemented. Further, universal codecs have been proposed that may compress depth, color, and/or vertex data. Some examples, may structure the data to compress as a list of values, compute the differences between consecutive values in the list, and applies entropy encoding (e.g., Fibonacci encoding) to the differences. Such examples may offer the advantage of the same implementation at both an encoder and a decoder; however, applying the same techniques to all types of data may cause significant inefficiencies in the data compression.